package com.joolun.system.domain;

import com.joolun.common.annotation.Excel;
import com.joolun.common.core.domain.BaseEntity;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 企业配置对象 sys_corp_config
 * 
 * @author joolun
 * @date 2025-06-19
 */
@Data
public class SysCorpConfig extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 企业ID */
    @Excel(name = "企业ID")
    private String corpId;

    /** 企业名称 */
    @Excel(name = "企业名称")
    private String corpName;

    /** 部署模式 */
    @Excel(name = "部署模式")
    private String deployMode;

    /** 基础API地址 */
    @Excel(name = "基础API地址")
    private String baseApiUrl;

    /** 通讯录API Secret */
    @Excel(name = "通讯录API Secret")
    private String contactSecret;

    /** 客户联系API Secret */
    @Excel(name = "客户联系API Secret")
    private String customerSecret;

    /** 主应用ID */
    @Excel(name = "主应用ID")
    private String mainAgentId;

    /** 主应用Secret */
    @Excel(name = "主应用Secret")
    private String mainAgentSecret;

    /** 同步通讯录回调地址的AesKey, 客户联系共用此配置 */
    @Excel(name = "同步通讯录回调地址的AesKey, 客户联系共用此配置")
    private String callbackAesKey;
    /** 同步通讯录回调地址的token，客户联系共用此配置 */
    @Excel(name = "同步通讯录回调地址的token，客户联系共用此配置")
    private String callbackToken;
    /** 客户联系的回调token，下面那个长度超限制 */
    @Excel(name = "客户联系的回调token，下面那个长度超限制")
    private String shortCallbackToken;
    /** 客户联系的回调AesKey */
    @Excel(name = "客户联系的回调AesKey")
    private String customerAesKey;

    /** 欢拓合作方ID */
    private String openIdHt;

    /** 欢拓合作方秘钥 */
    private String openTokenHt;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCorpId(String corpId) 
    {
        this.corpId = corpId;
    }

    public String getCorpId() 
    {
        return corpId;
    }
    public void setCorpName(String corpName) 
    {
        this.corpName = corpName;
    }

    public String getCorpName() 
    {
        return corpName;
    }
    public void setDeployMode(String deployMode) 
    {
        this.deployMode = deployMode;
    }

    public String getDeployMode() 
    {
        return deployMode;
    }
    public void setBaseApiUrl(String baseApiUrl) 
    {
        this.baseApiUrl = baseApiUrl;
    }

    public String getBaseApiUrl() 
    {
        return baseApiUrl;
    }
    public void setContactSecret(String contactSecret) 
    {
        this.contactSecret = contactSecret;
    }

    public String getContactSecret() 
    {
        return contactSecret;
    }
    public void setCustomerSecret(String customerSecret) 
    {
        this.customerSecret = customerSecret;
    }

    public String getCustomerSecret() 
    {
        return customerSecret;
    }
    public void setMainAgentId(String mainAgentId) 
    {
        this.mainAgentId = mainAgentId;
    }

    public String getMainAgentId() 
    {
        return mainAgentId;
    }
    public void setMainAgentSecret(String mainAgentSecret) 
    {
        this.mainAgentSecret = mainAgentSecret;
    }

    public String getMainAgentSecret() 
    {
        return mainAgentSecret;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("corpId", getCorpId())
            .append("corpName", getCorpName())
            .append("deployMode", getDeployMode())
            .append("baseApiUrl", getBaseApiUrl())
            .append("contactSecret", getContactSecret())
            .append("customerSecret", getCustomerSecret())
            .append("mainAgentId", getMainAgentId())
            .append("mainAgentSecret", getMainAgentSecret())
            .append("callbackAesKey", getCallbackAesKey())
            .append("callbackToken", getCallbackToken())
            .append("shortCallbackToken", getShortCallbackToken())
            .append("customerAesKey", getCustomerAesKey())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
